package com.jiexin.dao;

import com.jiexin.model.SysAclModule;
import com.jiexin.model.SysDept;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface SysAclModuleMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(SysAclModule record);

    int insertSelective(SysAclModule record);

    SysAclModule selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(SysAclModule record);

    int updateByPrimaryKey(SysAclModule record);

    //获取对应等级下所有子权限模块，包括子权限模块的子权限模块
    List<SysAclModule> getChildAclModuleListByLevel(@Param("level") String level);

    //批量更新level
    void batchUpdateLevel(@Param("sysAclModuleList") List<SysAclModule> sysAclModuleList);

    int countByNameAndParentId(@Param("parentId") int parentId, @Param("name") String name, @Param("id") Integer id);

    //获取当前权限模块的列表
    List<SysAclModule> getAllAclModule();

    //通过权限模块父阶ID查询记录
    int countByParentId(@Param("parentId") int parentId);
}